/*    */ package com.gillion.grule.client.validator;
/*    */ 
/*    */ import java.util.Map;
/*    */ import org.apache.commons.lang3.Validate;
/*    */ 
/*    */ 
/*    */ 
/*    */ 
/*    */ 
/*    */ 
/*    */ public class RangeValidatorServiceImpl
/*    */   implements ValidatorService
/*    */ {
/*    */   public boolean validate(String key, Object value, Map<String, Object> settings) {
/* 15 */     Validate.notNull(settings, "settings不能为空！", new Object[0]);
/* 16 */     Validate.isTrue((settings.containsKey("max") || settings.containsKey("min")), "在范围校验中，必须至少配置最大值或最小值中的一个", new Object[0]);
/*    */     
/* 18 */     Validate.notEmpty(key, "在范围校验中，key值不能为空", new Object[0]);
/*    */     
/* 20 */     Validate.notNull(key, "校验的值不能为空，请检查！", new Object[0]);
/*    */     
/* 22 */     if (value == null) {
/* 23 */       return true;
/*    */     }
/* 25 */     Validate.isTrue(value instanceof Number, "在范围校验中，输入值必须为数字类型", new Object[0]);
/*    */     
/* 27 */     Number validatorValue = (Number)value;
/* 28 */     if (settings.containsKey("max")) {
/* 29 */       int max = Integer.valueOf(settings.get("max").toString()).intValue();
/* 30 */       if (max - validatorValue.intValue() < 0) {
/* 31 */         return false;
/*    */       }
/*    */     } 
/*    */     
/* 35 */     if (settings.containsKey("min")) {
/* 36 */       int min = Integer.valueOf(settings.get("min").toString()).intValue();
/* 37 */       if (min - validatorValue.intValue() > 0) {
/* 38 */         return false;
/*    */       }
/*    */     } 
/*    */     
/* 42 */     return true;
/*    */   }
/*    */ }


/* Location:              D:\apache-tomcat-9.0.76\webapps\grule-manager\WEB-INF\lib\grule-client-2.0.2.RELEASE.jar!\com\gillion\grule\client\validator\RangeValidatorServiceImpl.class
 * Java compiler version: 8 (52.0)
 * JD-Core Version:       1.1.3
 */